package modele;

import java.io.Writer;

import java.util.Date;
import java.util.List;
import java.util.SortedSet;

import java.rmi.Remote;

public interface Dossier extends Remote {

    // les assesseurs
    public Bd getBd() throws Exception;
    public void setPostIt(String s) throws Exception;
    public boolean getRecevable() throws Exception;
    public float getNoteDossier() throws Exception;
    public String getDemandeListeParcours() throws Exception;
    public String getPropositionParcours() throws Exception;
    public String getReponseCoupon() throws Exception;
    public void setReponseCoupon(String rep) throws Exception;
    public Etudiant getEtudiant() throws Exception;
    public List<Demande> getFicheDemande() throws Exception;
    public Demande getDemande() throws Exception;
    public Evaluation getEvaluation() throws Exception;
    public List<Proposition> getPropositions() throws Exception;
    public Proposition getProposition() throws Exception;
    public SortedSet<Parcours> getParcoursInterdits() throws Exception;
    public String getPostIt() throws Exception;
    public Demande addDemande() throws Exception;
    public boolean addProposition(Date date) throws Exception;
    public boolean removeProposition(Date date) throws Exception;
    public boolean isRetenu() throws Exception;
    public boolean isFirstProposition(Proposition prop) throws Exception;
    public void clearPropositions() throws Exception;
    public void conserverPropositionAcceptee() throws Exception;

    // les algos
    public void record(int nbFiches) throws Exception;
    public void recordProposition() throws Exception;
    public void abondon() throws Exception;
    public boolean affecterDossiers(boolean plus) throws Exception;

    // les sorties
    public void imprimerDemande(Writer file) throws Exception;
    public void imprimerEvaluation(Writer file) throws Exception;
    public void imprimerPropositionAffichage(Writer file) throws Exception;
    public boolean imprimerCourrier(Writer file, boolean premier) throws Exception;
    public void imprimerRetenuTexteBibli(Writer file) throws Exception;
    public void imprimerRetenuTexteUes(Writer file) throws Exception;
}
